home *** CD-ROM | disk | FTP | other *** search
/ PC Answers 2003 September / PC Answers September 2003.iso / Software / freeware / pixeltoolbox / Setup.exe / Main / PixelToolbox.exe / PixelToolbox.dxr / Scripts_94_pattern browser script.ls < prev    next >
Encoding:
Text File  |  2002-06-08  |  6.7 KB  |  181 lines

  1. global gSize, gCast, gPatternListBoxHeight, gNewPatternName, myCurrentImage, myCurrentPreview
  2.  
  3. on edit1bitPattern
  4.   if the text of field "current pattern" = "(None)" then
  5.     alert("Select a pattern from the list first.")
  6.   else
  7.     if sprite(1).pUndoTrigger then
  8.       if field("file status") = EMPTY then
  9.         newDocCheck = baMsgBox("Save current project before starting a new one?", "Save First?", "YesNoCancel", "Question", 3)
  10.         if newDocCheck = "Yes" then
  11.           namePatternDialog()
  12.         else
  13.           if newDocCheck = "Cancel" then
  14.             pass()
  15.           end if
  16.         end if
  17.       else
  18.         newDocCheck = baMsgBox("Save changes to current project before starting a new one?", "Save First?", "YesNoCancel", "Question", 3)
  19.         if newDocCheck = "Yes" then
  20.           save1bitPattern()
  21.         else
  22.           if newDocCheck = "Cancel" then
  23.             pass()
  24.           end if
  25.         end if
  26.       end if
  27.       repeat with i = member("preview", "1bit").number to member("preview", "1bit").number + 9
  28.         member(i).image.fill(member(i).rect, paletteIndex(0))
  29.       end repeat
  30.     else
  31.       sprite(1).pUndoTrigger = 1
  32.     end if
  33.     myCurrentImage = duplicate(member("pattern temp").image)
  34.     myCurrentPreview = duplicate(member("preview", gCast).image)
  35.     member(gSize & "x" & gSize, gCast).image.copyPixels(myCurrentImage, myCurrentImage.rect, myCurrentImage.rect)
  36.     member("revert - 8").image = duplicate(member("8x8").image)
  37.     put the text of field "current pattern" into field "file status"
  38.     updateStage()
  39.     fnUpdatePreview()
  40.     member("state1 - " & gSize, gCast).image = member(gSize & "x" & gSize, gCast).image
  41.     sprite(35).pState = 0
  42.     sendSprite(35, #setMember)
  43.     member("state2 - " & gSize, gCast).image = member(gSize & "x" & gSize, gCast).image
  44.     myCurrentImage = VOID
  45.     myCurrentPreview = VOID
  46.   end if
  47. end
  48.  
  49. on delete1bitPattern
  50.   if the text of field "current pattern" = "(None)" then
  51.     alert("Not a pattern.")
  52.   else
  53.     if the text of field "current pattern" = the text of field "file status" then
  54.       clearCheck = baMsgBox("Clear current pattern and reset workspace?", "Clear current?", "YesNoCancel", "Question", 3)
  55.       if clearCheck = "Yes" then
  56.         repeat with i = member("preview", "1bit").number to member("preview", "1bit").number + 9
  57.           member(i).image.fill(member(i).rect, paletteIndex(0))
  58.         end repeat
  59.         sprite(1).pUndoTrigger = 0
  60.       else
  61.         if clearCheck = "Cancel" then
  62.           pass()
  63.         end if
  64.       end if
  65.       put EMPTY into field "file status"
  66.     end if
  67.     baDeleteIniEntry("Patterns", the text of field "current pattern", baSysFolder("windows") & "control.ini")
  68.     baFlushIni(baSysFolder("windows") & "control.ini")
  69.     put EMPTY into field "pattern list"
  70.     loadPatterns()
  71.     gPatternListBoxHeight = (member("pattern list").lineCount * member("pattern list").lineHeight) - (9 * member("pattern list").lineHeight)
  72.     hilite char 1 to member("pattern list").text.line[1].length + 1 of field "pattern list"
  73.     sprite(80).locV = 55
  74.     member("pattern preview").image.fill(member("pattern preview").rect, paletteIndex(0))
  75.     member("pattern temp").image.fill(member("pattern temp").rect, paletteIndex(0))
  76.   end if
  77. end
  78.  
  79. on rename1bitPattern
  80.   global gMUI, gPatternNameCheck
  81.   if the text of field "current pattern" = "(None)" then
  82.     alert("Not a pattern.")
  83.   else
  84.     the itemDelimiter = "="
  85.     repeat with X = 1 to the number of lines in field "pattern values"
  86.       if item 1 of line X of field "pattern values" = the text of field "current pattern" then
  87.         gPatternNameCheck = line X of field "pattern values"
  88.         exit repeat
  89.       end if
  90.     end repeat
  91.     gMUI = new(xtra("mui"))
  92.     windowProps = GetWindowPropList(gMUI)
  93.     windowProps.type = #normal
  94.     windowProps.name = "Rename"
  95.     windowProps.callback = "myCallbackBrowser"
  96.     windowProps.width = 200
  97.     windowProps.height = 100
  98.     windowProps.Mode = #pixel
  99.     list = []
  100.     element = GetItemPropList(gMUI)
  101.     element.type = #label
  102.     element.value = "New Name:"
  103.     element.locH = 5
  104.     element.locV = 5
  105.     element.width = 100
  106.     element.height = 20
  107.     add(list, element)
  108.     element = GetItemPropList(gMUI)
  109.     element.type = #editText
  110.     element.value = EMPTY
  111.     element.locH = 5
  112.     element.locV = 30
  113.     element.width = 190
  114.     element.height = 20
  115.     add(list, element)
  116.     element = GetItemPropList(gMUI)
  117.     element.type = #defaultPushButton
  118.     element.title = "OK"
  119.     element.locH = 20
  120.     element.locV = 65
  121.     element.width = 60
  122.     element.height = 20
  123.     add(list, element)
  124.     element = GetItemPropList(gMUI)
  125.     element.type = #cancelPushButton
  126.     element.title = "Cancel"
  127.     element.locH = 120
  128.     element.locV = 65
  129.     element.width = 60
  130.     element.height = 20
  131.     add(list, element)
  132.     Initialize(gMUI, [#windowPropList: windowProps, #windowItemList: list])
  133.     Run(gMUI)
  134.   end if
  135. end
  136.  
  137. on myCallbackBrowser action, elementNumber, elementList
  138.   global gMUI, gPatternNameCheck
  139.   if action = #itemChanged then
  140.     gNewPatternName = elementList.value
  141.   end if
  142.   if (action = #itemClicked) and (elementList.title = "OK") then
  143.     if (gNewPatternName = EMPTY) or (gNewPatternName = VOID) then
  144.       alert("Please type a name in the field.")
  145.     else
  146.       if gNewPatternName contains "=" then
  147.         alert("The character " & QUOTE & "=" & QUOTE & " is not allowed in a pattern name.")
  148.       else
  149.         stop(gMUI, 0)
  150.         gMUI = VOID
  151.         if gPatternNameCheck.item[1] = the text of field "file status" then
  152.           put gNewPatternName into field "file status"
  153.         end if
  154.         baDeleteIniEntry("Patterns", gPatternNameCheck.item[1], baSysFolder("windows") & "control.ini")
  155.         baFlushIni(baSysFolder("windows") & "control.ini")
  156.         writePattern = baWriteIni("Patterns", gNewPatternName, gPatternNameCheck.item[2], baSysFolder("windows") & "control.ini")
  157.         if writePattern = 0 then
  158.           alert("Not able to save pattern to disk.")
  159.         end if
  160.         baFlushIni(baSysFolder("windows") & "control.ini")
  161.         put EMPTY into field "pattern list"
  162.         loadPatterns()
  163.         gPatternListBoxHeight = (member("pattern list").lineCount * member("pattern list").lineHeight) - (9 * member("pattern list").lineHeight)
  164.         hilite char 1 to member("pattern list").text.line[1].length + 1 of field "pattern list"
  165.         sprite(80).locV = 55
  166.         member("pattern preview").image.fill(member("pattern preview").rect, paletteIndex(0))
  167.         member("pattern temp").image.fill(member("pattern temp").rect, paletteIndex(0))
  168.         gPatternNameCheck = VOID
  169.         gNewPatternName = VOID
  170.       end if
  171.     end if
  172.   else
  173.     if (action = #itemClicked) and (elementList.title = "Cancel") then
  174.       stop(gMUI, 0)
  175.       gMUI = VOID
  176.       gNewPatternName = VOID
  177.       gPatternNameCheck = VOID
  178.     end if
  179.   end if
  180. end
  181.